Microsoft Visual Studio Debugger

The Microsoft Visual Studio Debugger is a debugger that ships along with all versions of Microsoft Visual Studio. This debugger owes much of its feel and functionality to CodeView, a standalone, text-based debugger that shipped with Microsoft Visual C++ version 1.5 and earlier.

More advanced features of the most recent versions of this debugger include:

The main shortcoming of the Visual Studio Debugger is its inability to trace into kernel-mode code. However, this is possible using a free VisualDDK extension. Alternatively, kernel-mode debugging of Windows is generally performed by using WinDbg, KD, or SoftICE.

The Visual Studio Debugger also has no ability to debug Lambda-Expressions or Linq. This is because of the high complexity the debugger would grow to. However, most developers working with Lambda expressions are able to visualize the data through the several memory windows.

Edit-and-continue is held by many developers as Microsoft's greatest asset given to developers. A program that is running in memory, that encounters a simple mistake, can be corrected without having to stop the current program or exit the debugger. This feature allows very common mistakes to be corrected easily and with great time savings over other solutions which require exiting the program, making the change, recompiling, and then navigating back through the running program to the previous location, including those available by the GNU Compiler Collection chain and debuggers like GDB and DBX. Still other developers believe that such "sloppy programming techniques" represent a greater philosophical issue related to the mindset of the developer, and should be addressed in other ways such as "teaching them proper coding techniques." This division over belief systems and coding methodology philosophies often causes staunch debate and even moderate hostility between some of the more zealot in both camps. Debugger Canvas steps through code in the debugger in Visual Studio Ultimate 2010. [1]

References